1. Field of the Invention
The present invention relates to a Global Positioning System and a Global Positioning apparatus for precisely determining a location by receiving GPS signals from satellites.
2. Description of Related Art
Many satellites orbit the earth, and continuously transmit radio waves at the same carrier frequency of 1575.42 GHz. The radio waves are phase modulated by pseudo-random sequences which are assigned uniquely to individual satellites as different code patterns, so that the different radio waves can be easily identified. As a typical pseudo-random sequence, is known a regularly modulated code pattern called a C/A code (clear and acquisition code) available to the public. Furthermore, the radio waves carry navigation data such as satellite orbit information, satellite correction data, correction coefficients of the ionosphere, etc. which are necessary for users to perform positioning. The navigation data are transmitted by means of polarity inversions in the C/A code sequence.
FIG. 21 is a diagram showing the C/A code sequence. The C/A code sequence is a regularly arranged code sequence consisting of PN frames, each of which includes 1023 bits of one millisecond long. The navigation data is a 50 BPS signal, and the polarity of the C/A code sequence is reversed in accordance with the polarity of the navigation data.
FIG. 22 is a block diagram showing a configuration of a conventional Global Positioning System and Global Positioning apparatus disclosed in U.S. Pat. No. 5,663,734, for example. In this figure, the reference numeral 101 designates a base station having a GPS receiving antenna 102 and a transmitting and receiving antenna 103. The reference numeral 104 designates a remote unit.
The remote unit 104 comprises an RF (radio frequency) to IF (intermediate frequency) converter 106 with a GPS receiving antenna 105; an A/D converter 107 for converting the analog signal from the converter 106 to a digital signal; a memory (digital snapshot memory) 108 for recording the output of the A/D converter 107; and a general purpose programmable digital signal processor 109 (called DSP from now on) for processing a signal fed from the memory 108.
The remote unit 104 further comprises a program EPROM 110 connected to the DSP 109, a frequency synthesizer 111, a power regulator 112, a write address circuit 113, a microprocessor 114, a RAM (memory) 115, an EEPROM 116, and a modem 118 which has a transmitting and receiving antenna 117, and is connected to the microprocessor 114.
Next, the operation of the conventional GPS will be described.
The base station 101 commands the remote unit 104 to perform measurement via a message transmitted over a data communication link 119. The base station 101 also sends within this message Doppler data, a piece of satellite information on a satellite in view. The Doppler data has a format of frequency information, and the message will specify an identity of the satellite in view. This message is received by the modem 118 in the remote unit 104, and is stored in the memory 108 connected to the microprocessor 114.
The microprocessor 114 handles data information transfer between the modem 118 and the DSP 109 and write address circuit 113, and controls the power management functions in the remote unit 104.
When the remote unit 104 receives a command (e.g., from the base station 101) for GPS processing together with the Doppler information, the microprocessor 114 activates the power regulator 112 in accordance with the command. The power regulator 112 assigns functions to the RF to IF converter 106, A/D converter 107, memory 108, DSP and frequency synthesizer 111 via power lines 120a-120e. This causes the signal from the GPS satellite which is received by the antenna 105 to be down-converted to an IF frequency, followed by conversion to digital data.
A continuous set of such data, typically corresponding to a duration of 100 milliseconds to one second (or even longer), is stored in the memory 108.
Pseudo range calculation is executed by the DSP 109 that uses a fast Fourier transform (FFT) algorithm, which permits very rapid computation of the pseudo ranges by quickly performing a large number of correlation operations between a locally generated reference and the received signals. The fast Fourier transform algorithm permits a simultaneous and parallel search of all positions, thus accelerating the required computation process.
Once the DSP 109 completes its computation of the pseudo ranges for each of the in view satellites, it transmits this information to the microprocessor 114 through an interconnect bus 122. Then, the microprocessor 114 utilizes the modem 118 to transmit the pseudo range data over the data communication link 119 to the base station 101 for final position computation.
In addition to the pseudo data, a time lag may simultaneously be transmitted to the base station 101 that indicates the elapsed time from the initial data collection in the memory 108 to the time of transmission over the data communication link 119. This time lag can improve the capability of the base station 101 to perform position calculation, because it makes it possible to determine the GPS satellite positions at the time of data collection.
The modem 118 utilizes a separate transmitting and receiving antenna 117 to transmit and receive messages over the data communication link 119. The modem 118 includes a communication receiver and a communication transmitter, which can be alternately connected to the transmitting and receiving antenna 117. Similarly, the base station 101 may use a separate antenna 103 to transmit and receive data link messages, thus enabling the base station 101 to continuously receive GPS signals via the GPS receiving antenna 102.
It is expected that the position calculations in the DSP 109 will take less than a few seconds, depending upon the amount of the data stored in the memory 108 and the speed of the DSP 109 or several DSPs.
As described above, the memory 108 captures a record corresponding to a relatively long period of time. The efficient processing of this large block of data using fast convolution method contributes to improve ability of processing signals with low received levels due to partial blockage from buildings, trees etc.
All pseudo ranges for visible GPS satellites are computed using the same buffered data. This will improve performance of a continuous tracking GPS receiver in such situations as urban blockage conditions in which the signal amplitudes are rapidly changing.
The signal processing carried out by the DSP 109 will now be described with reference to FIG. 23. The objective of the processing is to determine the timing of the received waveform with respect to a locally generated waveform. Furthermore, in order to achieve high sensitivity, a very long portion of such a waveform, typically 100 milliseconds to one second, is processed.
The received GPS signal (C/A code sequence) consists of repetitive pseudo random pattern (PN frame) of 1023 bits of one millisecond long, and successive PN frames are added to one another. For example, there are 1000 PN frames over a period of one second. The first such frame is coherently added to the next frame, and the result added to the third frame, followed by the additions as shown in FIGS. 23(A)-23(E). The result is a signal having a duration of one PN frame (=1023 chips) The phase of this sequence is compared to a local reference sequence to determine the relative timing between the two, that is, the pseudo range.
With the foregoing configuration, the conventional Global Positioning System carries out preprocessing operation which precedes the correlation calculations, and which is called xe2x80x9cpreliminary integration of the received GPS signalxe2x80x9d to implement high sensitivity. In this process, the preliminary integration is carried out for 5-10 PN frames to avoid reduction in the integrals due to polarity inversions in the navigation data.
The C/A code sequence in the GPS received signal can change its phases, that is, have polarity inversions at the transitions of the bits of the navigation data. Therefore, the signal components may cancel out each other in the integration (cumulative summing) process because of the polarity inversions of the C/A code sequence in accordance with the navigation data, hindering sufficient improvement in the sensitivity (S/N ratio).
In other words, the conventional system does not detect the polarity inversions in the navigation data.
This limits the theoretical number of data to be integrated, and hence presents a problem of providing only insufficient improvement in the sensitivity (S/N ratio).
In addition, every time it determines its position (called xe2x80x9cpositioningxe2x80x9d from now on), the remote unit functioning as a terminal collects Doppler information from the base station, calculates pseudo ranges to the visible satellites, and determines its position from the pseudo ranges or by transmitting the results to the server. Thus, the positioning always requires communication with the server, offering a problem of entailing communication cost.
The present invention is implemented to solve the foregoing problems. It is therefore an object of the present invention to provide a highly sensitive Global Positioning System and Global Positioning apparatus that can reduce the communication cost by limiting communications with a server only to a case where the receiving sensitivity is insufficient, and that can achieve stable reception inside buildings or in the blockage therefrom.
According to one aspect of the present invention, a GPS terminal of the Global Positioning system converts a frequency of the GPS signal received; A/D converts the GPS signal passing through the frequency conversion using a sampling signal consisting of a predetermined number of pulses per unit time; stores the GPS signal after the A/D conversion for a predetermined time interval; performs Doppler correction of a carrier frequency of a selected satellite included in the stored GPS signal using local oscillation frequency deviation detection information and Doppler information which is detected by the GPS terminal or provided by the external apparatus; performs Doppler correction of a C/A code signal of the selected satellite; performs over a prescribed interval a processing in which corresponding bit values in individual C/A code long blocks of the GPS signal passing through the Doppler correction are multiplied by the navigation data which is provided by the external apparatus or detected by the GPS terminal itself to align polarity of the corresponding bit values, followed by summing up the corresponding bit values over the prescribed interval; iterates the same processing by a number of the navigation data, followed by obtaining cumulative results of the processings; carries out correlation calculation between the cumulative results and the C/A code signal of the selected satellite held in the GPS terminal; obtains a delay time to a peak position of the correlation values; and determines a pseudo range between the GPS terminal and the selected satellite from the delay time.
According to another aspect of the present invention, the GPS terminal of the Global Positioning system converts a frequency of the GPS signal received; A/D converts the GPS signal passing through the frequency conversion using a sampling signal consisting of a predetermined number of pulses per unit time; stores the GPS signal after the A/D conversion for a predetermined time interval; performs Doppler correction of a carrier frequency of a selected satellite included in the stored GPS signal using local oscillation frequency deviation detection information and Doppler information one of the GPS terminal and the external apparatus provides; performs Doppler correction of a C/A code signal of the selected satellite; performs over a prescribed interval a processing in which corresponding bit values in individual C/A code long blocks of the GPS signal passing through the Doppler correction are multiplied by the navigation data one of the external apparatus and the GPS terminal provides to align polarity of the corresponding bit values, followed by summing up the corresponding bit values over the prescribed interval, and by an averaging processing of the sums; carries out correlation calculation between the averaging results and the C/A code held in the GPS terminal; iterates similar correlation calculations sequentially for the GPS signal stored in the memory over the prescribed interval; scans, when a peak of the correlation calculation values is not obtained, the navigation data by a length of an integer multiple of the C/A code length; obtains a delay time to a peak position of the correlation values; and determines a pseudo range between the GPS terminal and the selected satellite from the delay time.
According to another aspect of the present invention, the Global Positioning system can terminate the correlation calculation when a peak of the correlation calculation values, however small it may be, is obtained.
According to another aspect of the present invention, the Global Positioning system can perform the correlation calculation with scanning the navigation data until a maximum peak of the correlation calculation values is obtained.
According to another aspect of the present invention, the GPS terminal of the Global Positioning system can comprise a GPS radio frequency stage; a frequency converter; a local oscillator; an oscillation frequency deviation detector; an A/D converter; and a digital signal processor that includes a memory for storing C/A codes of all satellites and a computing section.
According to another aspect of the present invention, the oscillation frequency deviation detector of the Global Positioning system can comprise a memory for storing data used for estimating frequency drifts for temperatures, and use, as Doppler correction data, data read from the memory in response to a temperature detected by a temperature sensor for detecting temperature of the local oscillator.
According to another aspect of the present invention, the GPS terminal of the Global Positioning system can set a scanning start position of Doppler correction of the navigation data in accordance with a sum of the Doppler correction data read from the memory in response to the temperature detected by the temperature sensor for detecting the temperature of the local oscillator and the Doppler information one of the external apparatus and GPS terminal provides.
According to another aspect of the present invention, the GPS terminal of the Global Positioning system can receive from an external apparatus a reference signal with higher accuracy than that generated by a reference oscillator installed in the GPS terminal, detect the local oscillation frequency deviation by counting the oscillation frequency over an interval of the reference signal with the higher accuracy; and use detected data as the Doppler correction data.
According to another aspect of the present invention, the Global Positioning system can detect the local oscillation frequency deviation by counting the oscillation frequency over an interval of a reference signal sent from an external apparatus; and set the scanning start position of the Doppler correction of the navigation data in response to a sum of Doppler correction data corresponding to the detected local oscillation frequency deviation and the Doppler information one of the external apparatus and GPS terminal itself provides.
According to another aspect of the present invention, the local oscillator of the Global Positioning system can comprise a reference oscillator, and stabilize an oscillation frequency of the reference oscillator in synchronism with a frequency supplied from an external apparatus with higher accuracy than the oscillation frequency of the reference oscillator.
According to another aspect of the present invention, the Global Positioning system can iterate, when the peak position of the correlation calculation values is not obtained, the scanning of the navigation data until the peak position of the correlation calculation values is obtained with varying at least one of Doppler correction data from an oscillation frequency deviation detector and the Doppler information which is provided by the external apparatus or detected by the GPS terminal.
According to another aspect of the present invention, scanning of the navigation data of the Global Positioning system can utilize a binary scanning method.
According to another aspect of the present invention, the Global Positioning system can generate I signal data and Q signal data with their carrier components removed by multiplying the GPS signal read from the memory by GPS carrier sine data and GPS carrier cosine data which are orthogonal to each other and pass through the frequency conversion; multiply the I signal data and Q signal data by sine data and cosine data of a frequency shift obtained by summing Doppler correction data fed from an oscillator frequency deviation detector and the Doppler data which is provided by the external apparatus or detected by the GPS terminal itself; extract from resultant signals C/A code signals which are Doppler corrected and orthogonal to each other; and carry out correlation calculation of I and Q signals of the C/A code signals, followed by vector composition.
According to another aspect of the present invention, the Global Positioning system can increase the prescribed number of the sampling signal for the A/D conversion which is carried out after the frequency conversion of the received GPS signal.
According to another aspect of the present invention, the GPS terminal of the Global Positioning system can transmit its time signal to a time server that generates an exact time signal, and receive the time signal from the time server to know a traveling time of a signal from the GPS terminal to the server.
According to another aspect of the present invention, the external apparatus of the Global Positioning system can comprise a time server generating an exact time signal, wherein the GPS terminal can transmit its time signal to the time server that generates the exact time signal, receive the time signal from the time server to know a traveling time of a signal from the GPS terminal to the server, and set a scanning start position for multiplying the GPS signal by the navigation data in response to the traveling time.
According to another aspect of the present invention, the scanning of the navigation data of the Global Positioning system can utilize a binary scanning method.
According to another aspect of the present invention, the Global Positioning system can make the correlation calculation interval variable in response to an electric field intensity detected by a received electric field intensity detector for detecting a condition of the received electric field.
According to another aspect of the present invention, the Global Positioning system can make the summing up interval variable in response to a condition of a received electric field.
According to another aspect of the present invention, the GPS terminal of the Global Positioning system can comprise: storing means for storing for a predetermined time interval the received GPS signal that passes through a frequency conversion and an A/D conversion using a sampling Signal consisting of a predetermined number of pulses per unit time; dividing means for dividing the GPS signal stored in the storing means by navigation data which is detected by the GPS terminal itself or provided by the external apparatus; sum-up means for performing over a prescribed interval a processing in which the divided GPS signal are multiplied by the navigation data to align polarity, followed by summing up over the prescribed interval; iterating means for iterating similar processing by a number of the navigation data to obtain cumulative results; correlation calculation means for carrying out correlation calculation between the cumulative sums and the C/A code sequence of a selected satellite held in the GPS terminal, and for obtaining a delay time to a peak position of the correlation values; and pseudo range detecting means for determining a pseudo range between the GPS terminal and the selected satellite from the delay time to the peak position. This makes it possible to implement a highly accurate Global Positioning system.